<%@ taglib prefix="s" uri="http://www.springframework.org/tags"%>
<%@page import="com.bipbip.modelo.Usuario"%>
<%@ page import="com.bipbip.modelo.NotificacionStandard"%>
<%@ page import="com.bipbip.service.NotificacionesManager"%>
<%@ page import="com.bipbip.service.NotificacionesService"%>
<%@ page import="com.bipbip.service.NotificacionesServiceDemo"%>
<%@ page import="java.util.List"%>
<%
	Usuario usuario = (Usuario) session.getAttribute("usuario");
	if ((usuario != null)) {
%>
<li class="dropdown"><a href="#" class="dropdown-toggle"
	data-toggle="dropdown"> <span class="badge badge-info :empty"
		id="flagDropdownNotificaciones"><i
			class="icon-exclamation-sign icon-white"></i> -</span>
</a>
	<ul class="dropdown-menu" id="dropdownNotificaciones">
		<li class="nav-header">Notificaciones</li>
	</ul></li>
<script>
    $(document).ready(function() {
        cargarNotificaciones();
        setInterval(function() {cargarNotificaciones()}, 2000);
    });

    function cargarNotificaciones() {

        jQuery.ajax({
            type: 'GET',
            url: "<s:url value="/api/notificaciones/"/>" + "<%=usuario.getId()%>",
            success: function(data) {
                var cantidad = 0;
                $("#dropdownNotificaciones").html('<li class="nav-header">Notificaciones</li>');
                $.each(data, function(index, notificacion) {
                    $("#dropdownNotificaciones").append(
                            '<li class="divider"></li><li><a id="not_' + notificacion.id + 
                            '" onclick="deleteNotification(' + notificacion.id + '); return false;" href="' +
                            "<s:url value="/"/>" +
                            notificacion.link +
                            '">' + notificacion.mensaje +
                            '<br/><i class="icon-' +
                            notificacion.icon +
                            '"></i> <small>' +
                            timestampToString(notificacion.fecha) +
                            '</small></a></li>');
                    cantidad++;
                });
                $("#flagDropdownNotificaciones").html('<i class="icon-exclamation-sign icon-white"></i> ' + cantidad)
            }
        });
    }

    function timestampToString(timestamp) {
        var fecha = new Date(timestamp);
        return pad(fecha.getDate().toString(), 2) + '/' + 
               pad((fecha.getMonth() + 1).toString(), 2) + ' a las ' +
               fecha.getHours() + ':' +
               pad(fecha.getMinutes().toString(), 2);
    }

    function pad(str, max) {
        return str.length < max ? pad("0" + str, max) : str;
    }
    
    function deleteNotification(id){
    	jQuery.ajax({
            type: 'DELETE',
            url: "<s:url value="/api/notificaciones/"/>" + "<%=usuario.getId()%>" + "/" + id,
            success: function(data) {
            	window.location.href = $('#not_' + id).attr("href"); 
            }
        });
    }
</script>
<%
	}
%>